package com.zh.work.entity.channel;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import com.zh.common.entity.BaseEntity;

import java.util.Date;

@ApiModel("快捷卡号实体类")
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("quick_bank_card")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class QuickBankCard extends BaseEntity {

  private static final long serialVersionUID = 2705221719372653617L;

  @ApiModelProperty(value = "主键", name = "id")
  @TableId("id")
  private Long id;
  @ApiModelProperty(value = "商户号", name = "merchNo")
  @TableField(value = "merchno")
  private String merchNo;
  @ApiModelProperty(value = "商户名称", name = "merchName")
  private String merchName;
  @ApiModelProperty(value = "卡类型(1-借记卡 2-信用卡)", name = "cardType")
  private Integer cardType;
  @ApiModelProperty(value = "银行卡号", name = "cardNo")
  @TableField(value = "cardno")
  private String cardNo;
  @ApiModelProperty(value = "发卡行编号", name = "bankCode")
  private String bankCode;
  @ApiModelProperty(value = "发卡行", name = "bankName")
  private String bankName;
  @ApiModelProperty(value = "真实姓名", name = "trueName")
  private String trueName;
  @ApiModelProperty(value = "身份证号", name = "certNo")
  @TableField(value = "certno")
  private String certNo;
  @ApiModelProperty(value = "预留手机号码", name = "mobile")
  private String mobile;
  @ApiModelProperty(value = "CVV码", name = "cvv")
  private String cvv;
  @ApiModelProperty(value = "有效期", name = "validDate")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  private Date validDate;
  @ApiModelProperty(value = "状态(1-待验证 2-验证成功 3-验证失败)", name = "status")
  private Integer status;
  @ApiModelProperty(value = "创建时间", name = "addTime")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  private Date addTime;
  @ApiModelProperty(value = "流水号", name = "traceNo")
  @TableField(value = "traceno")
  private String traceNo;
  @ApiModelProperty(value = "订单号", name = "orderNo")
  @TableField(value = "orderno")
  private String orderNo;
  @ApiModelProperty(value = "验证码", name = "validCode")
  private String validCode;
  @ApiModelProperty(value = "渠道编码", name = "channelCode")
  private String channelCode;
  @ApiModelProperty(value = "渠道商户号", name = "channelMerchNo")
  @TableField(value = "channel_merchno")
  private String channelMerchNo;
  @ApiModelProperty(value = "绑定ID", name = "bindId")
  private String bindId;
  @ApiModelProperty(value = "绑卡短验证(0-不需要 1-需要)", name = "smsFlag")
  private Integer smsFlag;


}
